#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    widget=new QWidget;
    model=new QFileSystemModel;
    model->setRootPath("/home/trak");
    model->setNameFilterDisables(false);
    model->setReadOnly(true);
    QStringList filters;
    filters << "*.txt *.cpp";
    ui->treeView->setModel(model);
    connect(ui->treeView, SIGNAL(doubleClicked(QModelIndex)), this, SLOT(open_file(QModelIndex)));
    connect(ui->treeView, SIGNAL(clicked(QModelIndex)), this, SLOT(on_pushButton_2_clicked(QModelIndex)));

}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::open_file(const QModelIndex &index)
{

    fileindex = model->filePath(index);
    QFile pFile(fileindex);
    if (!pFile.open(QIODevice::ReadOnly| QIODevice::Text))
             return;

}

void MainWindow::on_pushButton_clicked(const QModelIndex &index)
{
    fileindex = model->filePath(index);//достаём директорию по которому кликнул пользователь
    QString file = ui->textEdit->toPlainText();//берётся с текстэдита
    QFile pFile(fileindex);//инициализация путём до файла
    if (!pFile.open(QIODevice::WriteOnly | QIODevice::Text))
             return;
    pFile.write((const char *)file.toAscii().data());//записываем переменную file в файл, преобразовав кустринг в кубайтэррей
    pFile.close();
}

void MainWindow::on_pushButton_2_clicked(const QModelIndex &index)
{
      fileindex = model->filePath(index);
      QFile file(fileindex);
      if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
          return;
      line = file.readAll();
      ui->textEdit->setText(line);
}
